Software generation method and software generation system

ABSTRACT

The software generation method uses a computer, wherein the computer includes a control unit and a storage unit; the storage unit stores manufacturing log data that includes sensor data acquired in one or both of a manufacturing process and an inspection process, and environmental configuration information that relates to a manufacturing device or an inspection device from which the sensor data are acquired for each component or product; and the control unit reads the manufacturing log data from the storage unit, reads the environment configuration information from the storage unit, constructs a causal inference model based on the manufacturing log data, constructs an expanded causal inference model by expanding the causal inference model using the environment configuration information, generates a contracted model by contracting the expanded causal inference model to a causal relation of prescribed target data of interest, and generates prescribed application software by reading the contracted model.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims priority from Japanese application JP2018-161325, filed on Aug. 30, 2018, the contents of which is herebyincorporated by reference into this application.

TECHNICAL FIELD

The present invention relates to a software generation method and asoftware generation system.

BACKGROUND ART

JP-A-2011-076391 (PTL 1) relates to a background technique of thistechnical field. PTL 1 discloses that “a data selection unit compares inadvance a maximum value of probability having a maximum probability ofan output variable when an arbitrary value is set to each input variablecorresponding to the selection target data out of an unspecified largenumber of selection target data included in a Bayesian network modelpre-stored in a model data storage unit with a threshold held in athreshold temporary holding unit; when the maximum value of theprobability is equal to or larger than the threshold, a combination ofthe input variable and an arbitrary value corresponding to the maximumvalue of the probability is registered in an input variable white list;and when performing probability calculation of an output variable withthe Bayesian network, a probability calculation unit is caused toperform probability calculation by using only the selection target datawhose combination of the input variable and the arbitrary valuecorresponding to the maximum value of probability is held in the inputvariable white list as a probability calculation target”.

PRIOR ART LITERATURE Patent Literature

PTL 1: JP-A-2011-076391

SUMMARY OF INVENTION Technical Problem

PTL 1 describes a method for performing probability calculation by usinga Bayesian network for the purpose of failure diagnosis. However, whenthe method is applied to a manufacturing line, there is no effect evenif applied as it is since an improvement corresponding to a diagnosisresult is required after performing a failure diagnosis or a failurefactor diagnosis.

An object of the invention is to automatically generate various types ofapplication software according to a diagnosis result at a manufacturingsite.

Solution to Problem

The present application includes a plurality of means that solves atleast apart of the above problems, and an example thereof is as follows.In order to solve the above problems, the invention provides a softwaregeneration method for generating software by using a computer accordingto one aspect of the invention, wherein the computer includes a controlunit and a storage unit; the storage unit stores manufacturing log datathat includes sensor data acquired in one or both of a manufacturingprocess and an inspection process and environmental configurationinformation relating to a manufacturing device or an inspection devicefrom which the sensor data are acquired for each part or product; andthe control unit performs a result value receiving step of reading themanufacturing log data from the storage unit, an environmentconfiguration information reading step of reading the environmentconfiguration information from the storage unit, an expanded causalinference model construction step of constructing a causal inferencemodel based on the manufacturing log data and constructing an expandedcausal inference model by expanding the causal inference model by usingthe environment configuration information, a model contraction step ofgenerating a contracted model by contracting the expanded causalinference model to a causal relation of prescribed target data ofinterest, and a software generation step of reading the contracted modeland generating prescribed application software.

Advantageous Effect

According to the invention, various types of application software can beautomatically generated according to the diagnosis result at themanufacturing site. Problems, configurations, and effects other thanthose described above will be clarified from following descriptions ofembodiments.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram showing a configuration example of a knowledgemanagement device according to a first embodiment of the invention.

FIG. 2 is a diagram showing a data structure example of a manufacturingresult storage unit.

FIG. 3 is a diagram showing a data structure example of an inspectionresult storage unit.

FIG. 4 is a diagram showing a structure example of bill of materials(BOM) information.

FIG. 5 is a diagram showing a data structure example of a BOMinformation storage unit.

FIG. 6 is a diagram showing a data structure example of a sensorarrangement information storage unit.

FIG. 7 is a diagram showing a data structure example of a device typeinformation storage unit.

FIG. 8 is a diagram showing a data structure example of a constructionstarting history information storage unit.

FIG. 9 is a diagram showing a hardware structure example of a knowledgemanagement device.

FIG. 10 is a diagram showing examples of a causal inference model and aprobability structural equation.

FIG. 11 is a diagram showing examples of a save format of the causalinference model.

FIG. 12 is a diagram showing examples of a save format of a conditionalprobability p(x2|x1).

FIG. 13 is a diagram showing examples of a save format of a conditionalprobability p(x4|x2, x3).

FIG. 14 is a diagram showing an example of a flow of a causal analysisprocessing.

FIG. 15 is a diagram showing an example of a flow of a causal inferencemodel construction processing.

FIG. 16 is a diagram showing an example of a causal inference model of aterminal part.

FIG. 17 is a diagram showing a causal inference model of sensor dataconditioned by a device ID.

FIG. 18 is a diagram showing a causal inference model of the device IDconditioned by a device type.

FIG. 19 is a diagram showing an example of a causal inference model ofinspection data.

FIG. 20 is a diagram showing an example of an expanded causal inferencemodel.

FIG. 21 is a diagram showing an example of a causal inference modelconstruction screen.

FIG. 22 is a diagram showing an example of a failure mode selectionscreen of a machine difference analysis application.

FIG. 23 is a diagram showing an example of a box-whisker plot displayscreen for each process.

FIG. 24 is a diagram showing an example of a box-whisker plot displayscreen for a plurality of processes.

DESCRIPTION OF EMBODIMENTS

Hereinafter, an embodiment of the invention will be described below withreference to the drawings. The same members are generally denoted by thesame reference symbols throughout all the drawings for describing theembodiment, and the repetitive description thereof will be omitted.Further, it is obvious that, in the following embodiment, theconstituent elements (including element steps and the like) are notnecessarily indispensable, unless otherwise stated or unless clearlyconsidered to be essential in principle. Further, it is also obviousthat expressions “composed of A”, “made up of A”, “having A”, and“including A” do not exclude elements other than the element A, unlessotherwise stated that only the element A is included. Similarly, in thefollowing embodiment, when the shape of the constituent elements,positional relation thereof, and the like are described, thesubstantially approximate and similar shapes and the like are includedtherein unless otherwise stated or except the case where it isconceivable that they are apparently excluded in principle.

For example, when a factor that can be removed by improvement of a jigand the like is extracted as a diagnosis result, a fundamentalcountermeasure by device remodeling is required at the manufacturingsite. Further, when a non-removable factor, such as aged degradation ofa device or manufacturing variation due to device capability, isextracted, improvement by device control or device abnormality detectionis required depending on whether the factor is constantly generated ornon-constantly generated. Therefore, it is desirable that acountermeasure for remodeling the manufacturing line can be performedafter diagnosis in an information system that assists the manufacturingsite.

Further, it is not possible to handle a physical model described byfunctional relation with the probability calculation alone. Thus,generation of various types of application (application operation)software is realized by estimating a generic probability model usingmanufacturing data and knowledge known at the manufacturing site asinputs and extracting (contracting) necessary information from theprobability model in an information processing system according to theinvention.

Various methods of controlling a desired result in a manufacturingprocess or an inspection process are being researched by utilizing acorrelation relation between various measured values that are analyzedby using the information processing system. For example, it is possibleto analyze a correlation relation between rough variables (acquisitionvalues of sensors and the like) according to big data analysis.

If a causal relation can be efficiently extracted from correlationrelations between multiple measurement items, it is easy to specify aquantitative causal relation. Further, it is considered that theefficiency of application to other events can be increased by storingsuch a causal relation as knowledge.

When this is applied to the manufacturing process and the inspectionprocess, it can be used to generate application software (for example,machine difference analysis, failure analysis, abnormality detection,device startup efficiency, and device control) that specifies a causalrelation according to an event by constructing a causal inference modelthat includes measurement items by all associated sensors, creating ahigh dimensionality and high versatility expanded causal inference modelby integrating the causal inference model by using environmentconfiguration information that includes a facility or a process relatingto the measurement, and a configuration of a product to be manufactured,and contracting (reducing) the expanded causal inference model to asimple probability model by specifying a focused causal relationaccording to an event to be applied.

FIG. 1 is a diagram showing a structure example of a knowledgemanagement device according to a first embodiment of the invention. Aknowledge management device 100 includes a storage unit 110 and acontrol unit 120. The storage unit 110 includes a manufacturing resultstorage unit 111, an inspection result storage unit 112, a bill ofmaterials (BOM) information storage unit 113, a sensor arrangementinformation storage unit 114, a device type information storage unit115, a construction starting history information storage unit 116, andan expanded causal inference model storage unit 117. That is, themanufacturing result storage unit 111 and the inspection result storageunit 112 are measurement items acquired by a sensor. The BOM informationstorage unit 113, the sensor arrangement information storage unit 114,the device type information storage unit 115, and the constructionstarting history information storage unit 116 correspond to informationthat specifies an environment configuration including a sensor facility,a process, a configuration of a product to be manufactured, and thelike, that is, environment configuration information.

The control unit 120 includes a result value receiving unit 121, anenvironment configuration information receiving unit 122, an expandedcausal inference model construction unit 123, an expanded causalinference model saving unit 124, a model contraction unit 125, acontracted model reading unit 126 and a multi-application softwaregenerating unit 127.

FIG. 2 is a diagram showing a data structure example of themanufacturing result storage unit. The manufacturing result storage unit111 includes pVar1 (111 a), pVar2 (111 b), pVar3 (111 c), pVar4 (111 d),pVar5 (111 e), pVar6 (111 f), pVar7 (111 g), pVar8 (111 h), pVar9 (111j), and pVar10 (111 k).

The manufacturing result storage unit 111 includes manufacturing dataobtained by monitoring an operating state of a manufacturing device, andindividual items of the manufacturing data are indicated by item namespVar1 to pVar10. For example, pVar1 (111 a) is an item name thatindicates an ID number for identifying an individual product. The pVar2(111 b) to pVar10 (111 k) at second and subsequent columns are dataobtained as results of monitoring the operating state of themanufacturing device with a sensor and the like. Examples of items ofthe operating state to be monitored include temperature, humidity,pressure, current, voltage, amount of substance, and the like duringprocessing.

In general, these data are obtained by periodic sampling at the time ofmanufacturing the product. Here, the periodic sampling refers toperiodically acquiring sensor data at a prescribed frequency accordingto various monitored items, such as a frequency of 100 times per second.

In general, the manufacturing and processing time of the product islonger than a sampling interval of the periodic sampling. Therefore,while one product is being processed, data acquired from the same sensoris acquired for a plurality of times. Therefore, when ID numbers foridentifying individual products are arranged in a first column as shownin FIG. 2, data with the same ID number are duplicated since samplingdata are obtained for a plurality of times.

Therefore, the ID numbers for identifying individual products arehandled as unique keys for uniquely specifying each row vector, and dataare formatted such that duplication does not occur in the ID numbers foridentifying individual products by using statistical values (averagevalue, median value, and the like) of the data acquired a plurality oftimes for each item.

As another example of monitoring the operating state, there is aprocessing time required for processing the product. For such data, dataat one point (processing time) can be obtained each time one product isprocessed. Therefore, since duplication does not occur in the ID numbersfor identifying individual products, the data can be directly usedwithout being subjected to a statistical processing.

FIG. 3 is a diagram showing a data structure example of the inspectionresult storage unit. The inspection result storage unit 112 includescVar1 (112 a), cVar2 (112 b), cVar3 (112 c), cVar4 (112 d), cVar5 (112e), cVar6 (112 f), cVar7 (112 g), cVar8 (112 h), cVar9 (112 j), andcVar10 (112 k).

The inspection result storage unit 112 includes inspection data whichare measurement results of an inspection device, and individual items ofthe inspection data are indicated by item names cVar1 to cVar10. Forexample, cVar1 (112 a) is an item name indicating the ID number foridentifying an individual product. These data have a correspondencerelation with pVar1 (111 a) of the manufacturing result storage unit 111and the same individual is indicated by the same value. Therefore, it ispossible to acquire a correspondence relation between the manufacturingdata obtained by monitoring the operating state of the manufacturingdevice and the inspection data by referring to these data.

The cVar2 (112 b) to cVar10 (112 k) at second and subsequent columns aredata obtained as results of measurement by the inspection device with asensor and the like. Examples of the inspection data include ameasurement value relating to a physical size such as a size of aspecific portion of a product, and a measurement value relating to anelectrical characteristic.

Such inspection data are measured as numerical values. A standard is setin the inspection data, and it is determined that whether the date iswithin the standard. The above cVar10 (112 k) are data representingdetermination results of whether the product are within the standard. Inthis example, if the product are within the standard, “OK” is stored, ifnot, “NG” is stored.

Determination results according to such a standard are performed foreach measurement value, and there is a case where all the determinationresults for every measurement value are recorded and a case where acomprehensive determination result for all measurement values isrecorded. However, in an example of FIG. 3, only one determinationresult is described, which means that the comprehensive determinationresult is described.

FIG. 4 is a diagram showing a configuration example of BOM information.The BOM information is typically configured by a tree structure. Product401 represents a product that is subject to structure description in theBOM information. The product 401 is a combination of a subcomponent A402 to a subcomponent C 404. Therefore, the subcomponent A 402 to thesubcomponent C 404 are shown connected to the product 401 via edges inFIG. 4. In other words, the subcomponent A 402 to the subcomponent C 404are constituent elements of the product 401. For example, when theproduct 401 is an automobile, an engine, a chassis, a body, and the likecorrespond to the constituent elements, that is, the subcomponents 402to 404.

Further, the subcomponent A 402 to the subcomponent C 404 also includeone or a plurality of parts such as a part A 405 and a part B 406. Thatis, it is indicated that the part A 405 and the part B 406 areconstituent elements of the subcomponent A 402, apart C 407 and a part D408 are constituent elements of the subcomponent B 403, and a part E 409and a part F 410 are constituent elements of the subcomponent C 404. Forexample, when the subcomponent 402 is the engine of the automobile, acylinder, a piston, and the like correspond to the constituent elements,that is, the parts 405, 406.

FIG. 5 is a diagram showing a data structure example of the BOMinformation storage unit. The BOM information storage unit 113 includesa correspondence table of a product 113A, a subcomponent A 113B, asubcomponent B 113C, a subcomponent C 113D, a part A 113E, a part B113F, a part C 113G, a part D 113H, a part E 113J, and a part F 113K,and a bit of “1” is set in each corresponding point when there is arelation that defines constituent elements of each other. For example,since the product includes the subcomponent A 113B to the subcomponent C113D, “1” is stored in a relevant area of a product row on thehorizontal axis. Similarly, since the subcomponent A includes the part A113E and the part B 113F, “1” is stored in a relevant area of thesubcomponent A row on the horizontal axis.

FIG. 6 is a diagram showing a data structure example of the sensorarrangement information storage unit. The sensor arrangement informationstorage unit 114 includes sensor information names as row data, andincludes a column of device type A 1141, a column of device type B 1142,and a column of device type C 1143 as column data. A plurality ofdevices of the same type are introduced in the manufacturing line, andthe device type is information indicating the type of the device.Further, each sensor information name (cVar2 and the like) as the rowdata represents an individual item of the manufacturing data. In the rowof cVar2, “1” is stored in the device type of the device from which themanufacturing data cVar2 are acquired. In this example, a value of thecolumn of the device type A 1141 is “1”, which indicates that the valueof cVar2 is the data measured by a device having the device type A. Thedevice type is associated in advance with a type that corresponds to awork content of a coating device, a stretching machine, and a heattreatment machine, for example.

FIG. 7 is a diagram showing a data structure example of the device typeinformation storage unit. The device type information storage unit 115includes a device ID 1151 and a device type 1152 which are associatedwith each other. That is, the device type information storage unit 115stores information indicating which device type each device in themanufacturing line belongs to. For example, a device having a device ID“Eq1” is associated with “device type A” as a value of the device type1152. This indicates that the device “Eq1” belongs to the device type A.

FIG. 8 is a diagram showing a data structure example of the constructionstarting history information storage unit. A construction startinghistory is information that indicates a correspondence (a result)between a product and a manufacturing device that processes the product.The construction starting history information storage unit 116 storesinformation that specifies a device in charge of each process for eachproduct by using the product as the horizontal axis and the process asthe vertical axis. For example, the product “A01” 1161 indicates thatthe processing is performed using a manufacturing device “Eq1” inprocess 1 (1166), a manufacturing device “Eq3” in process 2 (1167), anda manufacturing device “Eq6” in process 3 (1168). Similarly, informationthat specifies a device by which each process is performed is shown forother products. Even when a manual process is included, it is possibleto cope with it by storing information that specifies a manual worker(or a team) in a similar manner to the manufacturing device.

The result value receiving unit 121 reads manufacturing log dataincluding one or both of the manufacturing data obtained by monitoringthe operating state of the manufacturing device and the inspection data.Specifically, the result value receiving unit 121 reads data from themanufacturing result storage unit 111 and the inspection result storageunit 112 of the storage unit 110.

The environment configuration information receiving unit 122 reads theBOM information, the sensor arrangement information, the device typeinformation, and the construction starting history information.Specifically, the environment configuration information receiving unit122 reads data from the BOM information storage unit 113, the sensorarrangement information storage unit 114, the device type informationstorage unit 115, and the construction starting history informationstorage unit 116 of the storage unit 110.

The expanded causal inference model construction unit 123 constructs anexpanded causal inference model by using the manufacturing log data, theBOM information, the sensor arrangement information, the device typeinformation, and the construction starting history information.Specifically, the expanded causal inference model construction unit 123constructs a Bayesian network by associating correlated sensor itemswith causes and results using a structure learning algorithm such as aK2 algorithm regardless of whether the correlated items are strictly ina causal relation. Then, the expanded causal inference modelconstruction unit 123 integrates the Bayesian network and constructs theexpanded causal inference model by using information, that is,environment configuration information that specifies the environmentconfiguration. The environment configuration includes a sensor facility,a process, a configuration of a product to be manufactured, and thelike, which are included in the BOM information storage unit 113, thesensor arrangement information storage unit 114, the device typeinformation storage unit 115, and the construction starting historyinformation storage unit 116.

The expanded causal inference model saving unit 124 describes theBayesian network constructed by the expanded causal inference modelconstruction unit 123 with extended data of eXtensible Markup Language(XML) generally used, and saves the Bayesian network in the expandedcausal inference model storage unit 117.

The model contraction unit 125 reduces a dimension of the expandedcausal inference model by integrating and erasing data other thannecessary data from the expanded causal inference model. That is, thecontraction is performed by refining to necessary causal relations andextracting necessary information from the expanded causal inferencemodel including causal relations of various data.

The contracted model reading unit 126 reads a model contracted by themodel contraction unit 125 and delivers the model to themulti-application software generating unit 127.

The multi-application software generating unit 127 reads the contractedmodel, and generates application software that uses a screen transitionand a processing content in accordance with a prescribed definition(definition described with XML). According to a configuration describedwith XML, the multi-application software generating unit 127 readsnecessary information from the Bayesian network which is a contractedmodel, generates information necessary for display by performingprescribed calculation, and generates a screen to be displayed inaccordance with screen information for defined transitionable display.

FIG. 9 is a diagram showing a hardware configuration example of theknowledge management device. The knowledge management device 100 can beimplemented by a computer including a central processing unit (CPU) 101,a memory 102, an external storage device 103 such as a hard disk drive(HDD), an input device 104 such as a keyboard, a mouse, and a barcodereader, and an output device 105 such as a display, or a computer systemincluding a plurality of computers.

For example, the result value receiving unit 121, the environmentconfiguration information receiving unit 122, the expanded causalinference model construction unit 123, the expanded causal inferencemodel saving unit 124, the model contraction unit 125, the contractedmodel reading unit 126, and the multi-application software generatingunit 127 of the control unit 120 can be implemented by loading aprescribed program stored in the external storage device 103 into thememory 102 and executing the program by the CPU 101. The storage unit110 can be implemented by utilizing the memory 102 or the externalstorage device 103 by the CPU 101.

However, the invention is not limited thereto, and the knowledgemanagement device 100 can also be implemented by an application specificintegrated circuit (ASIC) or a microcomputer, for example.

FIG. 10 is a diagram showing examples of a causal inference model and aprobability structural equation. When the expanded causal inferencemodel (the Bayesian network) is drawn as graphical data, a directedmodel having edges and nodes as shown in FIG. 10 is obtained.

The causal inference model refers to a graphical model which shows arelation between the cause and the result using a vertex, that is thenode, and an arrow, that is the edge. In addition, the causal inferencemodel includes a decomposition equation of a probability distributioncorresponding to a graphical model including the nodes and edges asshown in FIG. 10.

In the example of the probability structural equation in FIG. 10, anexample of a causal relation including a variable x1 (501), a variablex2 (502), a variable x3 (503), and a variable x4 (504) and adecomposition equation of the probability distribution are shown. Thiscorresponds to a fact that the left side of the decomposition equationof the probability distribution, that is, the decomposed side expressionis a joint probability distribution p(x1, x2, x3, x4) of the variable x1(501), the variable x2 (502), the variable x3 (503), and the variable x4(504). Further, the right side is an expression obtained by decomposingthe joint probability distribution into a product of conditionalprobabilities.

The conditional probability is expressed in a form of P(x|y) and shows aprobability of x under a condition where a value of y is determined. Inthe causal inference model, the condition y represents the cause, and xrepresents the result. Accordingly, since a state where the probabilitydistribution of x changes according to the value of y which is on thecause side can be expressed by a mathematical equation, the equationexpresses a causal relation that the value of x changes according to thechange in the value of the cause y. Further, the arrow, that is, theedge extends from the variable x1 (501) to the variable x2 (502) in FIG.10. This corresponds to a fact that a conditional probability p(x2|x1)is included at the right side of the decomposition equation of theprobability distribution. In the following examples, the conditionalprobability is also included at the right side of the decompositionequation in a form corresponding to the arrow.

There is no arrow, that is, no edge toward the variable x1 (501) in thecausal inference model in FIG. 10. Therefore, the right side of theprobability structural equation in FIG. 10 includes the probabilityp(x1) as a constant which is not in the form of the conditionalprobability. In addition, there are two arrows toward the variable x4(504) from x2 (502) and x3 (503) in the causal inference model in FIG.10. Correspondingly, the right side of the probabilistic structuralequation in FIG. 10 includes p(x4|x2, x3) having both x2 and x3 asconditions. Similarly, the right side includes conditional probabilitiesin the form corresponding to each vertex.

FIG. 11 is a diagram showing examples of a save format of the causalinference model. In FIG. 11, a row direction indicates a root of thearrow of the causal relation, that is, a cause item, and a columndirection indicates a tip end of the causal relation, that is, a resultitem. For example, in a row 1105 of “x1”, a column 1102 of “x2” has avalue of “1”. This corresponds to a fact that there is an edge from x1(501) toward x2 (502) in FIG. 10 (there is a causal relation).Meanwhile, in the row 1105 of “x1”, a column 1104 of “x4” has a value of“0”. This corresponds to a fact that there is no edge between x1 (501)and x4 (504) in FIG. 10 (although there is an indirect causal relation,there is no direct causal relation).

FIG. 12 is a diagram showing examples of a save format of theconditional probability p(x2|x1). For the sake of simplicity, in thisexample, x1 and x2 are variables that take any one of values 1, 2, 3, 4,and 5. In this example, a value of the probability in a column 1201 of“x2=1” and a row 1206 of “x1=1” is “0.32”. This indicates thatp(x1=1|x2=1)=0.32.

FIG. 13 is a diagram showing examples of a save format of theconditional probability p(x4|x2, x3). For the sake of simplicity, inthis example, x2 and x4 are variables that take any one of values 1, 2,3, 4, and 5, and x3 is a variable that takes any one of values 1, 2, and3. In this example, a value of the probability in a column 1301 of“x4=1” and a row 1306 of “x2=1, x3=1” is “0.11”. This indicates thatp(x4=1|x2=1, x3=1)=0.11.

FIG. 14 is a diagram showing an example of a flow of a causal analysisprocessing. The causal analysis processing is started by receiving aninstruction from an operator after turning on a power supply of theknowledge management device 100.

First, the result value receiving unit 121 reads the manufacturing logdata (step S101). Specifically, the result value receiving unit 121reads the manufacturing log data including one or both of themanufacturing data obtained by monitoring the operating state of themanufacturing device and the inspection data. For example, the resultvalue receiving unit 121 reads one or both of the manufacturing data andthe inspection data that are stored in the manufacturing result storageunit 111 and the inspection result storage unit 112, respectively.

Then, the environment configuration information receiving unit 122 readsthe BOM information (step S102). Specifically, the environmentconfiguration information receiving unit 122 reads structure data of theproduct stored in the BOM information storage unit 113.

Then, the environment configuration information receiving unit 122 readsthe sensor arrangement information (step S103). Specifically, theenvironment configuration information receiving unit 122 reads arelation between the item of sensor information stored in the sensorarrangement information storage unit 114 and the device type.

Then, the environment configuration information receiving unit 122 readsthe device type information (step S104). Specifically, the environmentconfiguration information receiving unit 122 reads a relation betweenthe sensor ID and the device type stored in the device type informationstorage unit 115.

Then, the environment configuration information receiving unit 122 readsthe construction starting history information (step S105). Specifically,the environment configuration information receiving unit 122 reads theproduct ID and the history of the processing device for each processstored in the construction starting history information storage unit116.

Then, the expanded causal inference model construction unit 123constructs a causal inference model (step S106). Specifically, theexpanded causal inference model construction unit 123 infers the causalrelation by using the manufacturing log data, the BOM information, thesensor arrangement information, the device type information, and theconstruction starting history information, and constructs the causalrelation model. Details of this processing will be described later.

Then, the model contraction unit 125 reads the target data of interest(step S107). Specifically, the model contraction unit 125 acquires dataitems necessary for a process which is desired to be improved on apre-registered manufacturing line. For example, when it is desired toperform the machine difference analysis, a construction starting historythat is read in the construction starting history information readingstep (step S105) and data that includes product inspection data,particularly failure mode data are pre-registered as necessary dataitems. The product inspection data is obtained by inspecting theperformance of the completed product acquired in the manufacturing logdata reading step (step S101). The failure mode data is obtained byclassifying determination results of non-defective/defective of productsand defective types when the products are determined to be defective.Therefore, when the machine difference analysis is to be targetsoftware, the model contraction unit 125 reads the product inspectiondata and the construction starting history as the target data ofinterest.

Then, the model contraction unit 125 contracts the causal inferencemodel for the target data of interest (step S108). Specifically, themodel contraction unit 125 erases data other than the target data ofinterest (necessary data) by integration in the expanded causalinference model and performs a processing for reducing the dimension ofthe expanded causal inference model. The following Equation (1) toEquation (3) show an example of the integral processing for reducing thedimension.

$\begin{matrix}\left\lbrack {{Equation}\mspace{14mu} 1} \right\rbrack & \; \\{{p(y)} = {\int{{p\left( {y,x_{1},x_{2},\ldots \mspace{14mu},x_{m}} \right)}{dyd}\; x_{1}{dx}_{2}\mspace{14mu} \ldots \mspace{14mu} {dx}_{m}}}} & (1) \\\left\lbrack {{Equation}\mspace{14mu} 2} \right\rbrack & \; \\{{p\left( {y,x_{1}} \right)} = {\int{{p\left( {y,x_{1},x_{2},\ldots \mspace{14mu},x_{m}} \right)}{dydx}_{2}\mspace{14mu} \ldots \mspace{14mu} {dx}_{m}}}} & (2) \\\left\lbrack {{Equation}\mspace{14mu} 3} \right\rbrack & \; \\{{p\left( {yx_{1}} \right)} = \frac{p\left( {y,x_{1}} \right)}{p(y)}} & (3)\end{matrix}$

The Equation (1) is an example of reducing the dimension of the causalinference model shown on the right side. In the Equation (1), yrepresents the product inspection data obtained by inspecting theperformance of the completed product acquired in the manufacturing logdata reading step (step S101) in FIG. 14. In the Equation (1), thedimension is reduced to the probability distribution of y by performingintegral calculation on variables (x₁ to x_(m)) other than y.

Further, the Equation (2) is also an example of reducing the dimensionof the causal inference model shown on the right side. In the Equation(2), y represents the product inspection data obtained by inspecting theperformance of the completed product acquired in the manufacturing logdata reading step (step S101) in FIG. 14, and x₁ represents theconstruction starting history read in the construction starting historyinformation reading step (step S105). In the Equation (2), the dimensionis reduced to the probability distribution of y and x₁ by performingintegral calculation on variables (x₂ to x_(m)) other than y and x₁.

Further, the Equation (3) is an example of calculating the conditionalprobability by using the Equation (1) and the Equation (2). The leftside is the conditional probability of y conditioned by x₁. The rightside is obtained by dividing the left side of the Equation (2) by theleft side of the Equation (1). It is possible to contract the causalinference model to a probability model relating to the target data ofinterest by integrating the expanded causal inference model in thismanner. Further, for the conditional probability distribution, theprobability model can be acquired by combining (dividing) the contractedmodels as in the Equation (3).

The above is a flow of the causal analysis processing. According to thecausal analysis processing, the expanded causal inference model can beconstructed by receiving the result value, and the probability modelnecessary for the target application software to be generated can becontracted and acquired.

FIG. 15 is a diagram showing an example of a flow of a causal inferencemodel construction processing. The causal inference model constructionprocessing is started at a causal analysis processing step S106.

First, the expanded causal inference model construction unit 123 infersa manufacturing log data model (step S1061). Specifically, the expandedcausal inference model construction unit 123 infers a causal relationbetween the manufacturing data and the product inspection data. In thisstep, the expanded causal inference model construction unit 123constructs a causal inference model for each of the lowermostconstituent elements (terminals) among the BOM information read in step5102.

FIG. 16 is a diagram showing an example of a causal inference model of aterminal part. A causal inference model 1601 of a part A shows a causalinference model corresponding to the part A 405 shown in FIG. 4. Asshown in FIG. 4, the part A is located at the most terminal of the treestructure of the BOM.

As shown in FIG. 16, a node 1602 closest to a result of the part A inthe causal inference model 1601 shows intermediate inspection data thatrelates to the quality of the part A. The intermediate inspection dataare obtained by inspecting the product performance in the intermediatestate of the product being manufactured. Since the part A is a partconfiguring the product, the part A is inspected as a part separatelyfrom the final product performance.

Similarly, the expanded causal inference model construction unit 123also constructs a causal inference model 1603 of a part B and a causalinference model 1605 of a part C. As described above, the causalinference model includes the graphical structure and the probabilitystructure. Means that estimates the graphical structure in such causalinference is an algorithm such as a K2 algorithm, and the expandedcausal inference model construction unit 123 adopts, for example, the K2algorithm. Further, means that estimates the probability structure is amaximum likelihood estimation algorithm and the like, and the expandedcausal inference model construction unit 123 adopts, for example, themaximum likelihood estimation algorithm.

Next, the expanded causal inference model construction unit 123constructs a sensor data-device ID relation model (step S1062).Specifically, the expanded causal inference model construction unit 123estimates the probability distribution of the sensor data conditioned bythe device ID. For example, the estimated probability distribution is aprobability distribution represented by p(cVar2|Eq=Eq1) and the like.Here, cVar2 is cVar2 (112 b) in the inspection result storage unit 112shown in FIG. 3, and Eq1 corresponds to “Eq1” which is the device ID1151 in the device type information storage unit 115 shown in FIG. 7.That is, p(cVar2|Eq=Eq1) indicates the probability distribution of thevariable cVar2 observed in the device “Eq1”. The method of estimatingp(cVar2|Eq=Eq1) is described as follows.

First, the expanded causal inference model construction unit 123 refersto the sensor arrangement information storage unit 114 shown in FIG. 6and specifies the device type (device type A, and the like) in which thevariable (cVar2) is observed. Next, the expanded causal inference modelconstruction unit 123 refers to the device type information storage unit115 shown in FIG. 7 and specifies the devices (Eq1 and Eq2)corresponding to the device type (device type A).

Further, the expanded causal inference model construction unit 123refers to the construction starting history information storage unit 116shown in FIG. 8, and specifies the product ID (A01, A03 and A05)manufactured by the device (Eq1). Then, the expanded causal inferencemodel construction unit 123 refers to the inspection result storage unit112 shown in FIG. 3 and estimates the probability distribution of cVar2by restricting the data to a row where the product ID cVar1 (112 a) isthe product ID (A01, A03 and A05). That is, this is p(cVar2|Eq=Eq1).

The probability distribution of the sensor data that is conditioned bythe device ID and estimated in the sensor data-device ID relation modelconstruction step (step S1062) is represented as a graphical structureshown in FIG. 17.

FIG. 17 is a diagram showing a causal inference model of the sensor dataconditioned by the device ID. In the causal inference model of FIG. 17,cVar2 (1701) corresponds to the variable cVar2. Eq (1702) represents avariable which takes any one of the devices Eq1 and Eq2 as a value. Acalculation example of p(cVar2|Eq=Eq1) corresponds to an example whenthe Eq (1702) is the value of “Eq1”.

Next, the expanded causal inference model construction unit 123constructs a device ID-device type model (step S1063). Specifically, theexpanded causal inference model construction unit 123 estimates theprobability distribution between the device ID and the device type. Anexample of the estimated probability distribution is shown in thefollowing Equation (4).

[Equation 4]

p(E _(q) =E _(q1)|_(DEVICE TYPE)=_(DEVICE TYPE A))   (4)

The Equation (4) indicates the probability that the device whose deviceID is “Eq1” belongs to the device type A. The probability value iscalculated by the expanded causal inference model construction unit 123using the device type information storage unit 115 shown in FIG. 7. Inthis example, since the value of the device type column in the row of“Eq1” is the device type A, the value of the probability of the Equation(4) is “1”. Provisionally, when the value of the device type column inthe row of “Eq1” includes a value other than the device type A, thevalue of the probability indicated by the Equation (4) is “0”.

The probability distribution between the device type and the device IDwhich is estimated in the device ID-device type model construction step(step S1062) is represented as a graphical structure shown in FIG. 18.

FIG. 18 is a diagram showing a causal inference model of the device IDconditioned by the device type. In FIG. 18, Eq (1801) represents avariable that takes the device ID as a value, and the device type (1802)represents a variable that takes the device type as a value. That is, anexample of the Equation (4) corresponds to an example when the Eq (1801)is “Eq1” and the device type (1802) is “device type A”.

Then, the expanded causal inference model construction unit 123constructs a component model (step S1064). Specifically, the expandedcausal inference model construction unit 123 performs the causalinference between the product inspection data of each component. Thisexample is shown in FIG. 19.

FIG. 19 is a diagram showing an example of a causal inference model ofthe inspection data. A leftmost node (1901) shows the product inspectiondata acquired in the manufacturing log data reading step S101.Meanwhile, nodes 1902 to 1904 on the right side show data obtained byinspecting the product performance in the intermediate state of theproduct being manufactured the in manufacturing log data reading stepS101. These nodes correspond to a leftmost node 1602, a leftmost node1604, and a leftmost node 1606 in the example of the causal inferencemodel of the terminal part in FIG. 16, respectively.

A method of constructing the component model can be performed by usingthe same algorithm as used in the manufacturing log data model inference(step S1061).

Then, the expanded causal inference model construction unit 123constructs an expanded causal inference model (step S1065).Specifically, the expanded causal inference model construction unit 123integrates (multiplies all) the probability distributions constructed inthe processing from the manufacturing log data model inference (stepS1061) to the component model construction (step S1064) to construct theexpanded causal inference model.

FIG. 20 is a diagram showing an example of the expanded causal inferencemodel. FIG. 20 shows an example of an expanded causal inference model2000 obtained by integrating a causal inference model 2001 of the partA, a causal inference model 2003 of the part B, and a causal inferencemodel 2005 of the part C. The portion where a node 2007 and nodes (2002,2004 and 2006) of each part are connected corresponds to the causalinference model constructed in the component model construction step51064.

Further, the portion where a node 2008 and nodes (2010, 2011) areconnected corresponds to the causal inference model constructed in thesensor data-device ID relation model construction step (1062). That is,a node 2009 corresponds to the device type, and the node 2008corresponds to the device ID. The nodes 2010 and 2011 correspond to theacquired values of the sensors. Accordingly, when the causal relation ofthe BOM structure is expanded and the causal relation of the variousresult values is associated with each other, the expanded causalityinference model is obtained. That is, the probability distribution ofthe manufacturing log data for each manufacturing device is included inthe expanded causal inference model in a product form, and at the sametime, the probability distribution of the manufacturing log data foreach manufacturing device and each type of the manufacturing device isincluded in the expanded causal inference model in a product form.

The above is a flow of the causal inference model constructionprocessing. According to the causal inference model constructionprocessing, the expanded causal inference model can be constructed byintegrating various result values.

FIG. 21 is a diagram showing an example of a causal inference modelconstruction screen. A causal inference model construction screen 2100includes a graphical model display unit 2101, a variable selection area2102, a Build button 2103, and an Integral button 2104.

A graphical structure of the constructed causal inference model isoutput to the graphical model display unit 2101. Therefore, theconstructed model can be confirmed visually.

The variable selection area 2102 receives setting input of the data ofinterest. Specifically, in the variable selection area 2102, a Tgtcolumn and a Cond column are provided for each variable, and input ofwhich variable is Tgt (acquisition probability) or which variable isCond (condition designation) is received. For example, when the cVar2variable is set to Tgt and the cVar5 variable is set to Cond, it isdesignated to obtain a probability model that is contracted to theprobability of cVar2 in a condition designation cVar5. The inputreceived in the variable selection area 2102 is read in the target dataof interest reading step S107 and is used in the contraction processingin step S108.

When receiving the input, the Build button 2103 starts the processingfrom step S101 (manufacturing log data reading) to step S106 (causalinference model constructing) of the causal analysis processing. Then,the constructed expanded causal inference model is displayed on thegraphical model display unit 2101.

When receiving the input, the Integral button 2104 reads the input ofthe variable selection area 2102 and starts the processing from stepS107 (target data of interest reading) to step S108 (causal inferencemodel contraction) of the causal analysis processing. Then, thecontracted causal inference model (the probability model) is displayedon the graphical model display unit 2101.

(Example of Application to Mechanical Difference Analysis)

An example of a case of applying the model to a machine differenceanalysis application will be described using the expanded causalinference model and the contraction mechanism thereof. In the machinedifference analysis application, the contracted model reading unit 126reads the probability model that is contracted to a prescribed variableby the model contraction unit 125, and the multi-application softwaregenerating unit 127 automatically generates a screen and an operationwidget in accordance with a prescribed eXtensible Markup Language (XML)definition. The mechanism may use a known application automaticgeneration technique.

FIG. 22 is a diagram showing an example of a failure mode selectionscreen of the machine difference analysis application. In a failure modeselection screen 2200, an occurrence ratio of a failure mode of aproduct failure is shown in a pie chart 2201. Information about the piechart 2201 necessary for outputting of the screen corresponds to theoccurrence ratio of each failure mode and the occurrence ratio iscalculated by using the probability distribution shown in the Equation(1).

The failure mode selection screen 2200 includes the pie chart 2201, afailure mode selection input receiving area 2202, a “previous” button2203, and a “next” button 2204.

The failure mode selection input receiving area 2202 is mounted by acheck box and the like, and receives a plurality of selections offailure modes to be analyzed.

When receiving the input, the “previous” button 2203 makes a transitionto a screen that is displayed before displaying the failure modeselection screen 2200. Normally, a login screen, another application, ora menu screen is assumed as a transition destination screen.

When receiving the input, the “next” button 2204 reads the failure modereceived in the failure mode selection input receiving area 2202 as aparameter and makes a transition to the next screen.

FIG. 23 is a diagram showing an example of a box-whisker plot displayscreen for each process. A box-whisker plot display screen 2300 for eachprocess is a screen to be transitioned to when the “next” button 2204 ispressed in a state where a failure mode A is selected in the failuremode selection input receiving area 2202 of the failure mode selectionscreen 2200.

As shown in FIG. 23, the box-whisker plot display screen 2300 includes abox-whisker plot display unit 2301, a process display unit 2302, a“previous process” button 2303, a “previous” button 2304, a “next”button 2305, a “next process” button 2306.

The box-whisker plot display unit 2301 plots the occurrence ratio of theselected failure mode A on the vertical axis, and the device on thehorizontal axis. A graph displayed on the box-whisker plot display unit2301 is a graph called a box-whisker plot, and is a graph in which atriangle representing the average value is superimposed on the box thatdescribes the probability distribution by using a statistical summaryamount of maximum, a third quartile, a median, a first quartile, and aminimum.

An upper end of the whisker given to each box represents the maximum, anupper end of the box represents the third quartile, the middle line inthe box represents the median, a lower end of the box represents thethird quartile, and a lower end of the whisker represents the minimum.When the “next” button 2204 of the failure mode selection screen 2200 ispressed, the box-whisker plot display unit 2301 is calculated by usingthe probability distribution which is derived from the contracted modelof the Equation (3) by software realizing the machine differenceanalysis application. The Equation (3) is the conditional probabilitythat the inspection result of each device is defective for each processand the defect of the inspection result is classified as A. In thisgraph, a process in which a position of the box-whisker plot is largelydifferent from other processes is considered to be a process thataffects the failure mode A.

The process display unit 2302 shows a process of the box-whisker plotshown in the current box-whisker plot display unit 2301. This exampleshows that the box-whisker plot is displayed in relation to process 3.

In this state, when there is an input to the “previous process” button2303, the box-whisker plot displayed in the box-whisker plot displayunit 2301 is changed to a box-whisker plot for process 2, which is thendisplayed, and when there is an input to the “next process” button 2306,the box-whisker plot displayed in the box-whisker plot display unit 2301is changed to a box-whisker plot for process 4, which is then displayed.

When there is an input to the “previous” button 2304, a transition ismade to a screen that is displayed before displaying the box-whiskerplot display screen 2300 for each process. Normally, a failure modeselection screen 2200 is assumed as the transition destination screen.

When the “next” button 2305 receives an input, a transition is made to abox-whisker plot display screen that is the next screen for a pluralityof processes.

FIG. 24 is a diagram showing an example of the box-whisker plot displayscreen for a plurality of processes. A box-whisker plot display screen2400 for a plurality of processes is a screen on which a transition ismade when the “next” button 2305 is pressed on the box-whisker plotdisplay screen 2300 for each process.

As shown in FIG. 24, the box-whisker plot display screen 2400 for aplurality of processes includes a multi-device box-whisker plot displayunit 2401, a process combination display unit 2402, a “previous process”button 2403, a “previous” button 2404, a “next” button 2405, and a “nextprocess” button 2406.

The multi-device box-whisker plot display unit 2401 plots the occurrenceratio of the selected failure mode A on the vertical axis, and thecombination of devices on the horizontal axis. The graph displayed onthe multi-device box-whisker plot display unit 2401 is a box-whiskerplot.

The multi-device box-whisker plot display unit 2401 is calculated by theprobability distribution which is derived from the contracted model ofthe Equation (3) by software realizing the machine difference analysis.The Equation (3) is the conditional probability that the inspectionresult is defective for each combination of a plurality of processes andthe defect of the inspection result is classified as A.

The process combination display unit 2402 shows a process of thebox-whisker plot shown in the current multi-device box-whisker plotdisplay unit 2401. This example shows that a box-whisker plot isdisplayed in relation to a combination of devices that are responsiblefor the process 1 and the process 2.

In this state, when there is an input to the “previous process” button2403, the box-whisker plot displayed in the multi-device box-whiskerplot display unit 2401 is changed to a box-whisker plot for the process4, which is then displayed, and when there is an input to the “nextprocess” button 2406, the box-whisker plot displayed in the multi-devicebox-whisker plot display unit 2401 is changed to a box-whisker plot fora combination of other processes, which is then displayed.

When there is an input to the “previous” button 2404, a transition ismade to a screen that is displayed before displaying the box-whiskerplot display screen 2400 for a plurality of processes. Normally, abox-whisker plot display screen 2300 is assumed as the transitiondestination screen.

When the “next” button 2405 receives an input, a transition is made to abox-whisker display screen that is the next screen (not shown) for threeprocesses.

Machine difference analysis application software can be automaticallygenerated by using such a screen as a contracted model, which isobtained by integrating variables other than target variables based onthe expanded causal inference model.

Failure rate prediction, failure analysis, abnormality detection, andthe like are assumed as other examples of deployment of applicationsoftware generation using the causal inference model with a reduceddimension constructed in the causal inference model contractionprocessing (step S108).

When generating failure rate prediction application software, aninspection result for the completed product can be predicted by usingmanufacturing data by taking the product inspection data obtained byinspecting the performance of the completed product in y and themanufacturing data obtained by monitoring the state of the device of themanufacturing device such as temperature and pressure during operationin x as p(y|x). When it is defined to use the data obtained bycontracting the expanded causal inference model to p(y|x) in the XMLdefinition, the failure rate prediction application software can beautomatically generated.

Further, even in generating failure analysis application software, it ispossible to specify the device data which causes the failure byconstructing the contracted model similar to the case of the failureprediction.

Further, when the abnormality detection is performed, the probabilitydistribution of the manufacturing data at the normal time can bespecified by taking the manufacturing data obtained by monitoring thestate of the device of the manufacturing device such as temperature andpressure during the operation in x as p(x), and when the manufacturingdata takes a value deviating from the probability distribution, it canbe detected as an abnormality. When a threshold is also defined by usingthe data obtained by contracting the expanded causal inference model top(x) in the XML definition, abnormality detection application softwarecan be automatically generated.

The above is an embodiment according to the invention. According to theabove embodiment, various types of application software can beautomatically generated at the manufacturing site according to thediagnosis result.

The invention is not limited to the above embodiment, and includesvarious modifications. For example, the embodiment described above isdetailed for easy understanding but the invention is not necessarilylimited to include all the above configurations.

A part of the configuration of each embodiment may be combined withanother configuration, omitted, or replaced with another configuration.

A part or an entirety of the above configurations, functions, processingunits, and the like may be implemented by hardware, for example, bybeing designed as an integrated circuit. Further, each of the aboveconfigurations, functions, and the like may be implemented by softwarecontrol that executes an operation according to a program implementingeach function by a processor. Information about the programs, tables,files, and the like for implementing the functions can be stored in arecording device such as a memory, a hard disk and an SSD or a recordingmedium such as an IC card, an SD card and a DVD, can be read from arandom access memory (RAM) at the time of being executed by a CPU andthe like.

Only control lines and information lines that are considered necessaryfor description are illustrated, and not necessarily all the controllines and information lines required for production are illustrated. Inpractice, it may be considered that almost all the configurations areconnected with each other.

A part or an entirety each of the above configurations, functions,processing units, and the like may be implemented by a distributedsystem, for example, by being executed by another device and beingintegrated via a network or the like.

Technical elements of the above embodiment maybe applied alone, or maybe divided into a plurality of portions such as program parts andhardware parts.

The invention has been described mainly through the embodiment.

REFERENCE SIGN LIST

-   100 . . . knowledge management device, 110 . . . storage unit, 111 .    . . manufacturing result storage unit, 112 . . . inspection result    storage unit, 113 . . . BOM information storage unit, 114 . . .    sensor arrangement information storage unit, 115 . . . device type    information storage unit, 116 construction starting history    information storage unit, 117 . . . expanded causal inference model    storage unit, 120 . . . control unit, 121 . . . result value    receiving unit, 122 . . . environment configuration information    receiving unit, 123 . . . expanded causal inference model    contraction unit, 124 . . . expanded causal inference model saving    unit, 125 . . . model contraction unit, 126 . . . contracted model    reading unit, 127 . . . multi-application software generating unit.

1. A software generation method for generating software by using acomputer, wherein the computer includes a control unit and a storageunit, the storage unit stores manufacturing log data that includessensor data acquired in one or both of a manufacturing process and aninspection process, and environmental configuration information thatrelates to a manufacturing device or an inspection device from which thesensor data are acquired for each component or product, and the controlunit performs a result value receiving step of reading the manufacturinglog data from the storage unit, an environment configuration informationreading step of reading the environment configuration information fromthe storage unit, an expanded causal inference model construction stepof constructing a causal inference model based on the manufacturing logdata and constructing an expanded causal inference model by expandingthe causal inference model by using the environment configurationinformation, a model contraction step of generating a contracted modelby contracting the expanded causal inference model to a causal relationof prescribed target data of interest, and a software generation step ofreading the contracted model and generating prescribed applicationsoftware.
 2. The software generation method according to claim 1,wherein a Bayesian network is used in the expanded causal inferencemodel construction step.
 3. The software generation method according toclaim 1, wherein the storage unit stores bill of materials (BOM)information that specifies a product configuration, and a causalinference model is constructed for each component included in the BOMinformation and is integrated to the expanded causal inference model inthe expanded causal inference model contraction step.
 4. The softwaregeneration method according to claim 1, wherein the expanded causalinference model includes a probability distribution of the manufacturinglog data in a product form for each manufacturing device in the expandedcausal inference model construction step.
 5. The software generationmethod according to claim 1, wherein the expanded causal inference modelincludes a probability distribution of the manufacturing log data in aproduct form for each manufacturing device and each type of themanufacturing device in the expanded causal inference model constructionstep.
 6. The software generation method according to claim 1, whereinthe storage unit stores the prescribed target data of interest for eachapplication software, and the expanded causal inference model iscontracted by being restricted and integrated to a causal relation ofthe target data of interest in the model contraction step.
 7. Thesoftware generation method according to claim 1, wherein the storageunit stores, as the target data of interest, a failure mode occurrenceratio and information specifying a process as a condition thereof inassociation with machine difference analysis application software, andthe expanded causal inference model is contracted by being restrictedand integrated to the failure mode occurrence ratio with the informationthat specifies the process as the condition in model contraction step.8. A software generation system comprising: a control unit; and astorage unit, wherein the storage unit stores manufacturing log datathat includes sensor data acquired in one or both of a manufacturingprocess and an inspection process, and environmental configurationinformation that relates to a manufacturing device or an inspectiondevice from which the sensor data are acquired for each component orproduct, and the control unit performs a result value receiving step ofreading the manufacturing log data from the storage unit, an environmentconfiguration information reading step of reading the environmentconfiguration information from the storage unit, an expanded causalinference model construction step of constructing a causal inferencemodel based on the manufacturing log data and constructing an expandedcausal inference model by expanding the causal inference model by usingthe environment configuration information, a model contraction step ofgenerating a contracted model by contracting the expanded causalinference model to a causal relation of prescribed target data ofinterest, and a software generation step of reading the contracted modeland generating prescribed application software.